package dryven.view.engine.component.childzone;

import dryven.util.ArrayIterable;
import dryven.view.engine.component.ViewComponent;
import dryven.view.engine.expression.ViewDataDeclaration;
import dryven.view.engine.expression.nodelisters.ExpressionNodeFactory;
import dryven.view.engine.parser.componentinvocation.AttributeBindings;

/**
 * A child zone strategy that makes that
 * a view component has only the default child zone.
 * 
 * No implicit view data declarations are made
 * @author bwindels
 *
 */
public class DefaultChildZoneStrategy implements ChildZoneStrategy {

	public DefaultChildZoneStrategy() {
		super();
	}

	public Iterable<String> getChildZones() {
		return new ArrayIterable<String>(
				new String[] { ViewComponent.DefaultChildZone });
	}

	public Iterable<ViewDataDeclaration> getViewDataDeclarations(
			String name,
			AttributeBindings attributeBindings,
			ExpressionNodeFactory _expressionFactory) {
		return null;
	}

}